package com.ysstech.distributed_quartz.utils;


import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class DateUtils {
	
	/**日期格式**/
	public static final String FORMATTER_OF_DATE = "yyyy-MM-dd";
	/**时间格式**/
	public static final String FORMATTER_OF_TIME = "HH:mm:ss";
	/**日期时间格式**/
	public static final String FORMATTER_OF_DATE_AND_TIME = "yyyy-MM-dd HH:mm:ss";
	
	/**
	 * 获取几个月之前的当前时间
	 * @param i 正数表示之前，负数表示之后的时间
	 * @return yyyy-MM-dd HH:mm:ss
	 */
	public String getDateBeforeSeveralMonth(int i){
		SimpleDateFormat format = new SimpleDateFormat(FORMATTER_OF_DATE_AND_TIME);
        Calendar c = Calendar.getInstance();
         
        c.setTime(new Date());
        c.add(Calendar.MONTH, -i);
        Date date = c.getTime();
        String mon = format.format(date);
        return mon;
	}
	
	/**
	 * 获取几天之前的当前时间
	 * @param i 正数表示之前，负数表示之后的时间
	 * @return yyyy-MM-dd HH:mm:ss
	 */
	public String getDateBeforeSeveralDay(int i){
		SimpleDateFormat format = new SimpleDateFormat(FORMATTER_OF_DATE_AND_TIME);
        Calendar c = Calendar.getInstance();
         
        c.setTime(new Date());
        c.add(Calendar.DAY_OF_MONTH, -i);
        Date date = c.getTime();
        String mon = format.format(date);
        return mon;
	}
	
	/**
	 * 格式化日期
	 * @param date
	 * @return yyyy-MM-dd HH:mm:ss
	 */
	public static String format(Date date){
		SimpleDateFormat format = new SimpleDateFormat(FORMATTER_OF_DATE_AND_TIME);
		return format.format(date);
		//return null;
	}
	
	
	public static void main(String[] args) {
		//System.out.println(new DateUtils().getDateBeforeSeveralMonth(-13));
		System.out.println(format(new Date()));;
	}
}

